package com.bootx.util.ai100.pojo;

import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.fasterxml.jackson.annotation.JsonProperty;

import java.io.Serializable;
import java.util.List;

@JsonIgnoreProperties(ignoreUnknown = true)
public class ArticleItem implements Serializable {

    private String typeName;
    private Integer type;
    private String content;
    private String authorAvatarImg;
    private String source;
    private Boolean collectFlag;
    private Object tools;
    private String channelName;
    private String channelAvatar;
    private Object categoryId;
    private String status;
    private String title;
    private Boolean publish;
    private Boolean draft;
    private Object showNumber;
    private Object userName;
    private Boolean likeFlag;
    private String summary;
    private String thumbnail;
    private Integer articleType;
    private Integer likes;
    private Object titleReview;
    private Object contentReview;
    private Integer channelId;
    private Object urlPath;
    private String keywords;
    private Integer collects;
    private String originalLink;
    private String publishTime;
    private Object attachments;
    private Object attachment;
    private String authorName;
    private String authorImg;
    private Integer views;
    private Object reason;
    private Integer id;
    private String createTime;
    private Integer createUser;
    private String updateTime;
    private Integer updateUser;
    private List<String> labels;
    private List<String> keywordsList;
    private List<LabelNamesJsonBean> labelNamesJson;
    private Object rejectReason;
    private Object lastRanking;
    private Object relatedArticleCount;
    private String innerLinkKeyword;
    private Object mobile;
    private String toolName;
    private String officialUrl;
    private String lastUpdateTime;
    private String labelNamesId;
    private String toolDetails;
    private Integer secondLevelType;
    private Boolean externalSocialStatus;
    private Integer firstLevelType;
    private Object popularNumber;
    private String logoImgUrl;
    private String toolImgUrl;
    private String socialInfos;
    private Boolean cherryPick;
    private Boolean cooperationModelButton;
    private Object cooperationModel;
    private Object cooperationModelRemark;
    private Object fromClient;
    private Object sendRejectSms;
    private Object showInNewest;
    private String extendName;
    private Object authorNickName;
    private String description;
    private List<LabelBean> label;
    private List<SocialListBean> socialList;

    public static class SocialListBean {

        @JsonProperty("logoImg")
        private String logoImg;
        @JsonProperty("showImg")
        private Object showImg;
        @JsonProperty("name")
        private String name;
        @JsonProperty("jumpUrl")
        private String jumpUrl;

        public String getLogoImg() {
            return logoImg;
        }

        public void setLogoImg(String logoImg) {
            this.logoImg = logoImg;
        }

        public Object getShowImg() {
            return showImg;
        }

        public void setShowImg(Object showImg) {
            this.showImg = showImg;
        }

        public String getName() {
            return name;
        }

        public void setName(String name) {
            this.name = name;
        }

        public String getJumpUrl() {
            return jumpUrl;
        }

        public void setJumpUrl(String jumpUrl) {
            this.jumpUrl = jumpUrl;
        }
    }

    @JsonIgnoreProperties(ignoreUnknown = true)
    public static class LabelBean {
        private String name;
        private Integer id;

        public String getName() {
            return name;
        }

        public void setName(String name) {
            this.name = name;
        }

        public Integer getId() {
            return id;
        }

        public void setId(Integer id) {
            this.id = id;
        }
    }


    @JsonIgnoreProperties(ignoreUnknown = true)
    public static class LabelNamesJsonBean {

        private String name;
        private Integer id;

        public String getName() {
            return name;
        }

        public void setName(String name) {
            this.name = name;
        }

        public Integer getId() {
            return id;
        }

        public void setId(Integer id) {
            this.id = id;
        }
    }
}
